$execute rotated ~ ~ summon marker run function vs:system/game_ctrol/smithing_table/summon_data/main {y_r:$(y_r)}
$execute rotated ~ ~ summon item_display run function vs:system/game_ctrol/smithing_table/summon_data/item_slot {y_r:$(y_r)}
$execute rotated ~ ~ summon item_display run function vs:system/game_ctrol/smithing_table/summon_data/item_table {y_r:$(y_r)}
$execute positioned ~ ~1.5 ~ rotated ~ ~ summon text_display run function vs:system/game_ctrol/smithing_table/summon_data/text_tips {y_r:$(y_r)}
$execute rotated ~ ~ summon interaction run function vs:system/game_ctrol/smithing_table/summon_data/item_slot_interaction {y_r:$(y_r)}

execute as @n[tag=main,distance=..5,type=marker] at @s positioned ^-1 ^ ^ summon interaction run function vs:system/game_ctrol/smithing_table/summon_data/forge_button_interaction
execute as @n[tag=main,distance=..5,type=marker] at @s positioned ^-1 ^ ^ summon item_display run function vs:system/game_ctrol/smithing_table/summon_data/forge_button_item_display

tag @n[tag=main,distance=..5,type=marker] remove main